11 research outputs found

    Graph attribution through sub-graphs

    Get PDF
    We offer an alternative to the standard formalisation of attributed graphs. We propose to represent an attributed graph as a graph with a marked sub-graph, in which the sub-graph represents the data domain, rather than as a tuple of graph and algebra. This is a general construction which can be shown to preserve adhesiveness of categories; it has the advantage of uniformity and gives more flexibility in defining data abstractions. We show equivalence of our formalisation with the standard one, under a suitable encoding of algebras as graphs

    Graph-based software specification and verification

    Get PDF
    The (in)correct functioning of many software systems heavily influences how\ud we qualify our daily lives. Software companies as well as academic computer\ud science research groups spend much effort on applying and developing techniques for improving the correctness of software systems. In this dissertation\ud we focus on using and developing graph-based techniques to specify and verify\ud the behaviour of software systems in general, and object-oriented systems more\ud specifically. We elaborate on two ways to improve the correctness (and thereby\ud the quality) of such systems.\ud Firstly, we investigate the potential of using the graph transformation tech-\ud nique to formally specify the dynamic semantics of (object-oriented) program-\ud ming languages. Those semantics are typically specified in natural language.\ud Such specifications are often hard to understand or even ambiguous. We show\ud how the graph transformation framework provides formal and intuitive means\ud for their specification.\ud Secondly, we develop techniques to verify systems of which the behaviour is\ud specified as graph production systems. For the verification of such systems, we\ud introduce an algorithm that combines a well-known on-the-\ud y model checking\ud algorithm with ideas from bounded model checking. One of the main prob-\ud lems of model checking is the state-explosion problem. This problem is often\ud tackled using partial order reduction techniques. Unfortunately, many such\ud techniques are based on assumptions that do not hold for graph production sys-\ud tems. Therefore, we develop a new dynamic partial order reduction algorithm\ud based on selecting so-called probe sets and prove its correctness.\ud Most of the techniques developed in this dissertation have been implemented\ud in the graph transformation tool GROOVE

    Simulating Multigraph Transformations Using Simple Graphs

    Get PDF
    Application of graph transformations for software verification and model transformation is an emergent field of research. In particular, graph transformation approaches provide a natural way of modelling object oriented systems and semantics of object-oriented languages.\ud \ud There exist a number of tools for graph transformations that are often specialised in a particular kind of graphs and/or graph transformation approaches, depending on the desired application domain. The main drawback of this diversity is the lack of interoperability.\ud \ud In this paper we show how (typed) multigraph production systems can be translated into (typed) simple-graph production systems. The presented construction enables the use of multigraphs with DPO transformation approach in tools that only support simple graphs with SPO transformation approach, e.g. the GROOVE tool

    Graph Attribution Through Sub-Graphs

    Get PDF

    Towards Translating Graph Transformation Approaches by Model Transformations

    Get PDF
    Recently, many researchers are working on semantics preserving model transformation. In the field of graph transformation one can think of translating graph grammars written in one approach to a behaviourally equivalent graph grammar in another approach. In this paper we translate graph grammars developed with the GROOVE tool to AGG graph grammars by first investigating the set of core graph transformation concepts supported by both tools. Then, we define what it means for two graph grammars to be behaviourally equivalent, and for the regarded approaches we actually show how to handle different definitions of both - application conditions and graph structures. The translation itself is explained by means of intuitive examples

    Towards Attributed Graphs in Groove

    Get PDF
    Graphs are a very expressive formalism for system modeling, especially when attributes are allowed. Our research is mainly focused on the use of graphs for system verification. Up to now, there are two main different approaches of modeling (typed) attributed graphs and specifying their transformation. Here we report preliminary results of our investigation on a third approach. In our approach we couple a graph to a data signature that consists of unary operations only. Therefore, we transform arbitrary signatures into a structure comparable to what is called a graph structure signature in the literature, and arbitrary algebras into the corresponding algebra graph

    ELECTRONIC COMMUNICATIONS OF THE EASST Towards Translating Graph Transformation Approaches by Model Transformations

    No full text
    Abstract. Recently, many researchers are working on semantics preserving model transformation. In the field of graph transformation one can think of translating graph grammars written in one approach to a behaviourally equivalent graph grammar in another approach. In this paper we translate graph grammars developed with the GROOVE tool to AGG graph grammars by first investigating the set of core graph transformation concepts supported by both tools. Then, we define what it means for two graph grammars to be behaviourally equivalent, and for the regarded approaches we actually show how to handle different definitions of both- application conditions and graph structures. The translation itself is explained by means of intuitive examples

    Defining object-oriented execution semantics using graph transformations

    No full text
    Abstract. In this paper we describe an application of the theory of graph transformations to the practise of language design. In particular, we have defined the static and dynamic semantics of a small but realistic object-oriented language (called TAAL) by mapping the language constructs to graphs (the static semantics) and modelling their effect by graph transformation rules (the dynamic semantics). This gives rise to execution models for all TAAL-programs, which can be used as the basis for formal verification. This work constitutes a first step towards a method for defining all aspects of software languages, besides their concrete syntax, in a consistent and rigorous manner. Such a method facilitates the integration of formal correctness in the software development trajectory.

    Towards Translating Graph Transformation Systems by Model Transformation

    No full text
    Recently, many researchers are working on semantics preserving model transformation. In the field of graph transformation one can think of translating graph grammars written in one approach to a behaviourally equivalent graph grammar in another approach. In this paper we translate graph grammars developed with the GROOVE tool to AGG graph grammars by first investigating the set of core graph transformation concepts supported by both tools. Then, we define what it means for two graph grammars to be behaviourally equivalent, and for the regar/ded approaches we actually show how to handle different definitions of both - application conditions and graph structures. The translation itself is explained by means of intuitive examples
    corecore